package ovm.gui.views.administration.users;

import com.vaadin.ui.*;
import ovm.management.administration.users.UsersManager;
import ovm.gui.views.AbstractView;

import static ovm.application.MainApplication.*;

public class DeleteUserView extends AbstractView {

    private TextField loginText;
    private Button deleteUserButton;

    public DeleteUserView (String login) {
        super();
        setCaption("Удаление пользователя");

        loginText = new TextField("Введите логин пользователя");
        loginText.setValue(login);

        deleteUserButton = new Button("Удалить");
        deleteUserButton.addListener(new Button.ClickListener() {
            @Override
            public void buttonClick(Button.ClickEvent event) {
                String login = (String) loginText.getValue();

                if (UsersManager.findUserEntry(login) == UsersManager.SUCCESSFUL) {
                    if (UsersManager.deleteUser(UsersManager.getUserByLogin(login)) == UsersManager.SUCCESSFUL) {
                        navigator.showNotification("Пользователь успешно удален");
                    } else {
                        navigator.showNotification("Произошла ошибка при удалении");
                    }
                } else {
                    navigator.showNotification("Пользователь с данным логином не найден");
                }

            }
        });

        addComponent(loginText);
        addComponent(deleteUserButton);
    }

}
